package com.dyrj.base.system.task.service;

import com.dyrj.base.system.task.model.SysTask;
import com.dyrj.vo.PageResultMsg;
import com.dyrj.vo.ResultMsg;
import org.springframework.web.multipart.MultipartFile;

import javax.servlet.http.HttpServletRequest;


/**
 * @Title: SysTaskService
 * @Description: todo(系统任务)
 * @Author 
 * @Date 2018年06月05日 14:29
 */
public interface SysTaskService {

	/**
	 * 获取列表
	 * @param record
	 * @return
	 */
	PageResultMsg table(SysTask record);

	/**
	 * 新增任务
	 * @param record
	 * @return
	 */
	ResultMsg add(SysTask record);

	/**
	 * 开启所有DB任务
	 * @param record
	 * @return
	 */
	ResultMsg enableALLJob(SysTask record);
	
	/**
	 * @Title: info
	 * @Description: todo(查看详情)
	 * @Params: [id]
	 * @Return: com.dyrj.base.system.user.model.SysTask    返回类型
	 * @Author: 
	 * @Date: 2018/9/4 下午3:19
	 */
	SysTask info(String id);
	
	/**
	 * @Title: update 
	 * @Description: (更新) 
	 * @param record
	 * @return ResultMsg    返回类型
	 */
	ResultMsg update(SysTask record);
	
	/**
	 * @Title: delete 
	 * @Description: (删除成功) 
	 * @param id
	 * @return ResultMsg    返回类型
	 */
	ResultMsg delete(String id);

//	/**
//	 * @Title: pause
//	 * @Description: (暂停定时任务)
//	 * @param id
//	 * @return ResultMsg    返回类型
//	 */
//	ResultMsg pause(String id);
//
//	/**
//	 * @Title: pause
//	 * @Description: (重新开始定时任务)
//	 * @param id
//	 * @return ResultMsg    返回类型
//	 */
//	ResultMsg resume(String id);

	/**
	 * @Title: uploadJarFile
	 * @Description: (上传jar包文件)
	 * @param jarfile,request
	 * @return ResultMsg    返回类型
	 */
	ResultMsg uploadJarFile(MultipartFile jarfile, HttpServletRequest request);

    /**
     * @Title: initTaskJobs
     * @Description: (启动服务初始化所有启用的定时任务)
     */
    void initTaskJobs();

}
